package com.fate.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fate.domain.Order;
import com.fate.vo.OrderConfirm;
import com.fate.vo.OrderResult;
import com.fate.vo.OrderStatus;

public interface OrderService extends IService<Order>{

    /**
     * 获取用户的订单状态
     *
     * @param userId
     * @return
     */
    OrderStatus getOrderCount(String userId);
    /**
     * 分页查询用户订单详情
     *
     * @param page
     * @param status
     * @param userId
     * @return
     */
    Page<Order> getOrderPage(Page<Order> page, Integer status, String userId);
    /**
     * 订单确认接口
     *
     * @param userId
     * @param orderConfirm
     * @return
     */
    OrderResult orderConfirm(String userId, OrderConfirm orderConfirm);

    /**
     * 订单提交
     * @param userId
     * @param orderResult
     * @return
     */
    String submit(String userId, OrderResult orderResult);
    /**
     * 修改订单状态 已经支付
     *
     * @param orderNum
     */
    void changeOrderStatus(String orderNum);
}
